#include <stdio.h>
#include <stdarg.h>

void simple_va_fun( int i, ... )
{
	char *s;

	va_list ap;
	int count = i;

	va_start( ap, i );
	while( i > 0 ) {
		s = va_arg( ap, char * );
		printf( "%d: %s\n", count - i + 1, s );
		i--;
	}
	va_end( ap );
	return;
}

int main( int argc, char *argv[] )
{
	simple_va_fun( 2, "aaa", "bbb" );
}

/*
 * 如果要写类似于printf之类的函数，要在里面调vfprintf, vsprintf, vsnprintf之类的以v开头的函数。
 * 并且可以用__attribute__((format (printf,4,5))) 这样设置attribute以在gcc编译时check一下。(注意如在类中使用的话, 函数中会隐藏一个this指针)。
 *
 */
